System and method for providing automatic tuning of a radio receiver and for providing automatic control of a CD/tape player

ABSTRACT

A sound system with a radio receiver having the ability to automatically tune to a new radio station if (a) the current radio station is broadcasting a song, program or other content that the user dislikes and/or (b) one of one or more predetermined radio stations is broadcasting content that the listener likes. In one embodiment, the sound system includes a tuner for tuning to a frequency of a radio station and for converting a radio signal transmitted by the radio station to an audio signal; a memory unit for storing a first set of templates, wherein the first set of templates correspond to a to a set of songs, programs, commercials, or other content disliked by the user of the sound system; and a recognition processor, coupled to the tuner and to the memory unit, for receiving the audio signal, generating templates from the audio signal, and comparing the generated templates to at least one of the templates within the first set of templates. If one of the generated templates matches one of the templates within the first set of templates, the tuner is automatically tuned to a new radio station. In this manner, the sound system automatically tunes to a new radio station when the current radio station broadcasts content that the user of the sound system has indicated a dislike thereof.

RELATED APPLICATIONS

The present application is a continuation of U.S. patent applicationSer. No. 10/769,901, filed Feb. 3, 2004, entitled “SYSTEM AND METHOD FORPROVIDING AUTOMATIC TUNING OF A RADIO RECEIVER AND FOR PROVIDINGAUTOMATIC CONTROL OF A CD/TAPE PLAYER,” which is a continuation of U.S.patent application Ser. No. 09/460,131, filed Dec. 13, 1999, entitled“SYSTEM AND METHOD FOR PROVIDING AUTOMATIC TUNING OF A RADIO RECEIVERAND FOR PROVIDING AUTOMATIC CONTROL OF A CD/TAPE PLAYER,” now U.S. Pat.No. 6,704,553 B1, which is a continuation-in-part of U.S. patentapplication Ser. No. 08/946,865, filed Oct. 8, 1997, entitled “DJ,” nowabandoned, all of which are hereby incorporated herein by reference intheir entireties.

FIELD OF THE INVENTION

The present invention relates to sound systems, and more specifically tosound systems having a radio receiver and/or CD/Tape player.

BACKGROUND OF THE INVENTION

Conventional sound systems have features that make it easy for alistener to find a song or program that the listener enjoys. Forexample, a radio receiver of a conventional sound system typically has ascan push button that causes the radio receiver to scan the availableradio stations. When the listener hears a song or program he or shelikes, the listener again activates the scan button to stop the radioreceiver from scanning. Another feature provided by conventional radioreceives are preset push buttons. A listener can program the presetbuttons so that each button is associated with a unique radio station.When the listener activates one of the programmed preset buttons, theradio receiver automatically tunes to the station associated with theactivated preset. With this feature, a listener can easily and quicklychange stations if the current station is broadcasting a song, program,commercial, or other content the listener does not enjoy.

The drawback of these features is that frequently the listener is toopreoccupied with other matters to activate one of the above describedbuttons. This is particularly true when the listener is driving a car oris entertaining a guest and does not want to interrupt what he or she isdoing simply to change the station. Thus, there will be times when thelistener has no choice but to listen to an unpleasant song orcommercial.

Therefore, what is a desired is a system and method that overcomes theabove disadvantages of conventional sound systems.

SUMMARY OF THE INVENTION

The present invention provides, among other things, a sound system witha radio receiver having the ability to automatically tune to a new radiostation if (a) the current radio station is broadcasting a song, programor other content that the user dislikes and/or (b) one of one or morepredetermined radio stations is broadcasting content that the listenerlikes. Preferably, the sound system also includes a CD/Tape playerhaving the ability to automatically skip a song that the user hasindicated a dislike thereof.

In one aspect, the sound system allows the listener to specify a set of“disliked” content and a set of “liked” content. The sound systemcompares what the current radio station is broadcasting to the set of“disliked” content, and if there is a match automatically changes thestation. Similarly, the sound system compares the set of “liked” contentto that which a predetermined radio station is broadcasting, and ifthere is a match automatically tunes to the predetermined radio station.

In one aspect, the set of “disliked” content is represented by a firstset of “templates”, and the set of “liked” songs is represented by asecond set of “templates.” A template is a digital representation of asample of an audio signal.

In one embodiment, the sound system includes a tuner for tuning to aradio station and for converting a signal transmitted by the radiostation to an audio signal; a memory unit for storing the first set oftemplates; and a recognition processor, coupled to the tuner and to thememory unit, for receiving the audio signal, generating templates fromthe audio signal, and comparing the generated templates to at least oneof the templates within the first set of templates. If one of thegenerated templates matches one of the templates within the first set oftemplates, the tuner is automatically tuned to a new radio station. Inthis manner, the sound system of the present invention automaticallytunes to a new radio station when the current radio station broadcastscontent that the user of the sound system has indicated a dislikethereof.

Further features and advantages of the present invention, as well as thestructure and operation of various embodiments of the present invention,are described in detail below with reference to the accompanyingdrawings. Those skilled in the art will appreciate the scope of thepresent invention and realize additional aspects thereof after readingthe following detailed description of the preferred embodiments inassociation with the accompanying drawing figures.

BRIEF DESCRIPTION OF THE DRAWING FIGURES

The accompanying drawings, which are incorporated herein and form partof the specification, illustrate various embodiments of the presentinvention and, together with the description, further serve to explainthe principles of the invention and to enable a person skilled in thepertinent art to make and use the invention. In the drawings, likereference numbers indicate identical or functionally similar elements.Additionally, the left-most digit(s) of a reference number identifiesthe drawing in which the reference number first appears.

FIG. 1 is a block diagram of a sound system according to a preferredembodiment of the present invention.

FIG. 2 is a flowchart showing operations performed by the firstrecognition processor.

FIG. 3 is a flowchart showing operations performed by the secondrecognition processor.

FIGS. 4A-D are flowcharts showing operations performed by the centralprocessor.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

FIG. 1 is a block diagram of a sound system 100 according to a preferredembodiment. Sound system 100 includes two tuners, a primary tuner 104and a secondary tuner 102. It is contemplated that in an alternativeembodiment of sound system 100 there are two or more secondary tuners102. Additionally, in one embodiment, sound system 100 does not includeany secondary tuners 102. However, in the interest of clarity andbrevity, the present invention will be described in terms of thepreferred embodiment, in which there is a single secondary tuner. Bothprimary tuner 104 and secondary tuner 102 convert a signal broadcast bya “radio station” into an audio signal.

The “radio station” can be a conventional radio station that broadcastscontent through the air using radio waves, or the “radio station” can bea modem radio station that broadcasts content through a data network,such as the Internet. Consequently, in one embodiment, sound system 100would include an antenna for receiving signals broadcasts via radiowaves, and in another embodiment, sound system 100 would include anetwork connection for receiving signal broadcast through a network.

Primary tuner 104 and a CD/Tape player 106 are coupled through a switch108 to a speaker system 126. In addition to including one or morespeakers, speaker system 126 may include an amplifier (not shown) orother like component. The configuration of switch 108 determines whetherthe audio signal produced by tuner 104 or the audio signal produced byCD/Tape player 106 is provided to speaker system 126. The configurationof switch 108 is controlled by a central processor 116, which controlsswitch 108 based on input at a control panel 110.

Primary tuner 104 and CD/Tape player 106 are also coupled to a firstrecognition processor 122 through switch 108. That is, first recognitionprocessor 122 either receives an audio signal from primary tuner 104 orfrom CD/Tape player 106 depending on the configuration of switch 108.The audio signal produced by secondary tuner 102 is provided to a secondrecognition processor 118.

First recognition processor 122 is coupled to a first memory unit 124and a second memory unit 120. Second recognition processor 118 iscoupled to second memory unit 120. Both first memory unit 124 and secondmemory unit 120 include memory, such as static or dynamic random accessmemory (RAM), read only memory (ROM), electrically erasable programmableROM (EEPROM), and the like. Preferably, the memory included in bothmemory units 120 and 124 is non-volatile memory.

The Recognition Processors

The purpose of first recognition processor 122 is to enable sound system100 to automatically skip songs and other content that the user hasspecified should be skipped. FIG. 2 is a flowchart showing a process 200performed by first recognition processor 122 that enable sound system100 to perform this function. Process 200 begins in step 202, wherefirst recognition processor 122 receives an audio signal from switch108. Next, first recognition processor 122 generates a “template” afterit encounters an X second or greater period of silence in the audiosignal (step 204). In one embodiment, X is about 0.5. As the term isused herein, a “template” is a digital representation of a sample of anaudio signal. The sample of the audio signal from which firstrecognition processor 122 generates the template is the first Y secondsof the audio signal that immediately follows the X second or greatersilence period. In one embodiment, Y is about 3 seconds. Because mostradio stations insert a short silence period prior to playing a song, orbroadcasting a program or a commercial, each template generated by firstrecognition processor 122 is usually a digital representation of thestart of a song, program, or commercial.

After step 204, first recognition processor 122 compares its mostrecently generated template to previously created templates that arewithin a first set of templates (step 206). Preferably, each previouslycreated template within the first set of templates is stored in firstmemory unit 124, but they may be stored in second memory unit 120instead. Each previously created template within the first set oftemplates corresponds to a song, program, commercial, and the like(collectively referred to as “content”) that a user of sound system 100has indicated his or her dislike thereof. The procedure corresponding tohow the user of sound system 100 indicates his or her dislike of a songis described further below.

If first recognition processor 122 determines that its most recentlygenerated template “matches” one of the templates in the first set oftemplates, then control passes to step 208, otherwise control passesback to step 202. The term “matches” is used broadly herein, thus, onetemplate “matches” another template if the two templates are eitheridentical or similar. In step 208, first recognition processor 122 sendsto central processor 116 a control signal indicating that a match hasoccurred. After step 208, control passes back to step 202.

After receiving from first recognition processor 122 the control signalindicating that a match has occurred, central processor 116 determineswhich one of the primary tuner 104 and the CD/Tape player 106 iscurrently coupled to speaker system 126 through switch 108. If centralprocessor 116 determines that primary tuner 104 is currently coupled tospeaker system 126, then central processor 116 sends to primary tuner104 a command signal that causes primary tuner 104 to tune to a newfrequency. If central processor 116 determines that CD/Tape player 106is currently coupled to speaker, system 126, then central processor 116sends to CD/Tape player 106 a command signal that causes it to skip tothe next song on the CD or the Tape. In this manner, sound system 100automatically skip songs, commercials, or other content that the userhas indicated a dislike thereof.

Referring now to second recognition processor 118, the purpose of secondrecognition processor 118 is to enable sound system 100 to switch to thesongs for which the user has a listening preference. FIG. 3 is aflowchart illustrating a process 300 performed by second recognitionprocessor 118 that enable sound system 100 to perform this function.Process 300 begins with step 302, where second recognition processor 118receives an audio signal from secondary tuner 102. Next, after secondrecognition processor 118 encounters an X second or greater period ofsilence in the audio signal, second recognition processor 118 generatesa template from a sample of the audio signal (step 304). The sample ofthe audio signal that second recognition processor 118 uses to generatethe template is the first Y seconds of the audio signal that immediatelyfollows the X second or greater silence period. X is typically about 0.5seconds and Y is typically about 3 seconds. As discussed above, mostradio stations insert a short silence period prior to playing a song, orbroadcasting a program or a commercial. Thus, each template generated bysecond recognition processor 118 is usually a representation of thestart of a song, program, or commercial.

After step 304, second recognition processor 118 compares its mostrecently generated template to previously created templates that arewithin a second set of templates (step 306). Each template within thesecond set of templates corresponds to content (e.g., a particular song)for which the user of sound system 100 has indicated a listeningpreference. Preferably, each template within the second set of templatesis stored in second memory unit 124. The procedure corresponding to howthe user of sound system 100 indicates that he or she has a listeningpreference for a particular song is described further below.

If second recognition processor 118 determines that its most recentlygenerated template matches one of the templates in the second set oftemplates, control passes to step 308, otherwise control passes back tostep 302. In step 308, second recognition processor 118 sends to centralprocessor 116 a control signal indicating that a match has occurred.After step 308, control passes back to step 302.

After receiving from second recognition processor 118 the control signalindicating that a match has occurred, central processor 116 sends toprimary tuner 104 a command signal that causes primary tuner 104 to tuneto the frequency to which secondary tuner is currently tuned.Thereafter, central processor 116 sends to secondary tuner 102 a commandsignal causing secondary tuner 102 to tune to a new radio station. Inthis manner, sound system 100 automatically causes primary tuner 104 totune to the radio station to which secondary tuner 102 was tunedwhenever that radio station broadcasts content for which the user hasindicated a listening preference.

First and second recognition processors 118 and 122 can be implementedwith either special purpose processor or general purpose processors. Theprocess for generating and matching templates performed by therecognition processors can be any conventional speech/audio recognitionalgorithm. One such algorithm is described in U.S. Pat. No. 5,790,754,to Mozer et al., entitled, “Speech Recognition Apparatus for ConsumerElectronic Applications,” the entire contents of which are incorporatedherein by reference. In one specific embodiment, recognition processors118 and 122 are each implemented with the RSC-364 integrated circuitsold by Sensory Circuits, Inc. of Sunnyvale Calif. The RSC-364 is an8-bit micro-controller designed specifically for speech applications inconsumer electronic products.

Adding and Deleting Templates to the First and Second Set of Templates

The user of sound system 100 indicates that he or she dislikes aparticular song, program, commercial or other content by activating a“thumbs-down” push button 114 when the particular song, program, orcommercial is being outputted by sound system 100. Similarly, the userof sound system 100 indicates that he or she has a listening preferencefor a particular song, program, commercial or other content byactivating a “thumbs-up” push button 112 when the particular song,program, or commercial is being outputted by sound system 100.

As discussed above with reference to FIG. 2, first recognition processor122 continuously generates templates. In response to the user activatingthe “thumbs-down” button 114, central processor 116 directs (i.e.,causes) first recognition processor 122 to add its most recentlygenerated template to the first set of templates. That is, when the useractivates thumbs-down button 114 a signal indicating the activation issent from the control panel 110 to the central processor 116. Inresponse to receiving this signal, the central processor 116 sends acontrol signal to first recognition processor 122 that causes firstrecognition processor 122 to include its most recently generatedtemplate in the first set of templates. In one embodiment, firstrecognition processor 122 includes a template in the first set oftemplates by storing the template in a linked list or in a tableresiding in either first memory unit 124 or second memory unit 120.Preferably, however, all of the templates within the first set oftemplates are stored in first memory unit 124, as opposed to secondmemory unit 120.

In response to the user activating the “thumbs-up” button 112, centralprocessor 116 directs first recognition processor 122 to include itsmost recently generated template in the second set of templates. In oneembodiment, first recognition processor 122 includes a template in thesecond set of templates by storing the template in a linked list or in atable residing in second memory unit 120.

Thus, the user should only activate thumbs-up button 112 when the output125 of sound system 100 is an output that the user prefers to listen tomore than almost any other content. Further, the user should onlyactivate thumbs-down button 114 when the output 125 of sound system 100is an output that the user would prefer never to have to listen to.

In response to the user activating both the thumbs-up button 112 and thethumbs-down button 114, central processor 116 causes first recognitionprocessor 122 to delete the last matched template from memory.

Central Processor 116

FIGS. 4A-D are flow charts showing a portion of the operating sequenceof central processor 116. As shown in FIGS. 4A-D, central processor 116first waits for an input (step 402). In steps 404, 405, and 406 centralprocessor 116 determines whether the input is from control panel 110,first recognition processor 122, or second recognition processor 118.

If the input is from control panel 100, central processor 116 determineswhich button was activated (steps 408, 410 and 412). If thumbs-up button112 was activated, central processor 116 directs first recognitionprocessor 122 to add its most recently generated template to the secondset of templates (step 414). If thumbs-down button 114 was activated,central processor 116 directs first recognition processor 122 to add itsmost recently generated template to the first set of templates (step416). If a “favorite” button 115 is activated, central processor 116adds the frequency at which the primary tuner 104 is tuned to a list of“favorite” radio stations (step 418). Preferably, the user adds at leasttwo radio stations to the “favorite radio station” list. In this way,primary tuner 104 can be tuned to one of the user's favorite radiostations, while the secondary tuner 102 is tuned to another one of theuser's favorite radio stations.

As an optional feature, when the user activates thumbs-up button 112,central processor 116 will store the current volume setting with thestored template. Thus, when the stored template is matched with acurrent template, central processor 116 will not only cause primarytuner 104 to change frequencies to the frequency at which secondarytuner 102 is tuned, but also adjust the volume level to the volumesetting stored with the matched template. In this way, not only can theuser of sound system 100 specify the songs the he or she likes, but alsothe volume at which he or she likes to listen to the songs.

If the input is from first recognition processor 122 and the input is acontrol signal indicating that a template match has occurred, thencentral processor 116 determines which one of the primary tuner 104 andthe CD/Tape player 106 is currently coupled to speaker system 126through switch 108 (step 420). If central processor 116 determines thatprimary tuner 104 is currently coupled to speaker system 126, thencentral processor 116 sends to primary tuner 104 a command signal thatcauses primary tuner 104 to tune to a new frequency (step 422).Preferably, the new frequency to which the primary tuner is tuned is oneof the frequencies stored in the “favorite radio station” list, which isdescribed above. In this manner, sound system 100 automatically tunes toone of the listener's favorite radio stations when the current radiostation to which sound system is tuned is broadcasting disliked content.If as a result of step 422, primary tuner 104 is tuned to the samefrequency as secondary tuner 102, central processor 116 will send tosecondary tuner 102 a command signal that causes secondary tuner 102 totune to a new frequency (step 425). In this way, it is ensured thatprimary tuner 104 and secondary tuner 102 are not tuned to the samefrequency, which would defeat the purpose of having a secondary tuner102.

If central processor 116 determines that CD/Tape player 106 is currentlycoupled to speaker system 126, then central processor 116 sends toCD/Tape player 106 a command signal that causes CD/Tape player 106 toskip to the next song on the CD or the Tape (step 426). In this manner,sound system 100 automatically skips songs the listener has indicated heor she does not like.

If the input is from second recognition processor 118 and the input is acontrol signal indicating that a template match has occurred, centralprocessor 116 sends to primary tuner 104 a command signal that causesprimary tuner 104 to tune to the frequency to which secondary tuner 102is tuned (step 428) and, thereafter, sends to secondary tuner 102 acommand signal that causes secondary tuner 102 to tune to a newfrequency (step 430). Preferably, the new frequency to which secondarytuner 102 is tuned is one of the frequencies stored in the “favoriteradio station” list. In this manner, sound system 100 automaticallycauses primary tuner 104 to tune to the radio station to which secondarytuner 102 was tuned whenever that radio station broadcasts content forwhich the user has indicated a listening preference.

Sound system 100 may further include an input/output interface (notshown) for interfacing sound system 100 with a network or other devicefor the purpose of downloading previously created templates in to memoryunit 120 and/or memory unit 124. For example, sound system 100 couldinclude an input/output port for connecting to a disk drive. In thisembodiment, a user of sound system 100 would insert into the disk drivea disk having templates stored thereon. The templates could then becopied from the disk to memory within sound system 100.

While various embodiments/variations of the present invention have beendescribed above, it should be understood that they have been presentedby way of example only, and not limitation. Thus, the breadth and scopeof the present invention should not be limited by any of theabove-described exemplary embodiments, but should be defined only inaccordance with the following claims and their equivalents.

What is claimed is:
 1. A system, comprising: a tuner for tuning to aradio station and for converting a signal transmitted by the radiostation to an audio signal; a memory unit for storing one or moretemplates each derived from a portion of a corresponding audio signal;and a recognition processor, associated with the tuner and the memoryunit, for determining whether content of the audio signal matches one ofthe one or more templates, wherein if the content of the audio signalmatches one of the one or more templates, the tuner is automaticallytuned to a different radio station than the one to which the tuner iscurrently tuned; wherein each of the one or more templates is associatedwith a content item for which a user of the system has previouslyindicated a dislike.
 2. The system of claim 1, further comprising: asecond tuner for tuning to a second radio station and for converting asignal transmitted by said second radio station to a second audiosignal; and a second recognition processor, associated with the secondtuner, for determining whether content of the second audio signal is oneof one or more second templates for which the user of the system haspreviously indicated a listening preference.
 3. The system of claim 2,wherein if the content of the second audio signal matches one of the oneor more second templates, the tuner is automatically tuned to the secondradio station.
 4. The system of claim 1, wherein the one or moretemplates are user-defined.
 5. A system, comprising: a tuner for tuningto a radio station and for converting a signal transmitted by the radiostation to an audio signal; a memory unit for storing one or moretemplates each derived from a portion of a corresponding audio signal;and means for determining whether content of the audio signal matchesone of the one or more templates, wherein if the content of the audiosignal matches one of the one or more templates, the tuner isautomatically tuned to a different radio station than the one to whichthe tuner is currently tuned; wherein each of the one or more templatesis associated with a content item for which a user of the system haspreviously indicated a dislike.
 6. A method, comprising: generating, bya tuner, an audio signal from a signal transmitted by a first radiostation; determining whether content of the audio signal matches one ofone or more previously identified templates each derived from a portionof a corresponding audio signal; and causing the tuner to tune to asecond radio station if the content of the audio signal matches one ofthe one or more previously identified templates; wherein each of the oneor more previously identified templates is associated with a contentitem for which a user of the system has previously indicated a dislike.7. A method of controlling a system including a first tuner tuned to afirst radio station and a second tuner tuned to a second radio station,comprising: generating, by the second tuner, an audio signal from asignal transmitted by the second radio station; determining whethercontent of the audio signal from the signal transmitted by the secondradio station matches one of one or more previously identified templateseach derived from a portion of a corresponding audio signal; and causingthe first tuner to tune to the second radio station if the content ofthe audio signal from the signal transmitted by the second radio stationmatches one of the one or more previously identified templates; whereineach of the one or more previously identified templates is associatedwith a content item for which a user of the system has previouslyindicated a dislike.
 8. The method of claim 7, further comprising thestep of causing the second tuner to tune to a different radio stationthan the one to which the second tuner is currently tuned.
 9. The methodof claim 7, wherein each of the one or more previously identifiedtemplates is associated with a content item for which an associated userhas indicated a listening preference.
 10. The method of claim 9, furthercomprising the steps of: generating, by the first tuner, an audio signalfrom a signal transmitted by the first radio station; determiningwhether content of the audio signal from the signal transmitted by thefirst radio station matches one of one or more second previouslyidentified templates; and causing the first tuner to tune to a radiostation that is different than the first radio station if the content ofthe audio signal from the signal transmitted by the first radio stationmatches one of the one or more second previously identified templates.11. A system, comprising: a first tuner tuned to a first radio station;a second tuner tuned to a second radio station; and a recognitionprocessor, associated with the first and second tuners, for determiningwhether content of an audio signal transmitted from the second radiostation matches one of one or more previously identified templates eachderived from a portion of a corresponding audio signal and for which anassociated user has indicated a listening preference and causing thefirst tuner to tune to the second radio station if the content of theaudio signal transmitted from the second radio station matches one ofthe one or more previously identified templates; wherein each of the oneor more previously identified templates is associated with a contentitem for which a user of the system has previously indicated a dislike.12. A system, comprising: a tuner for tuning to a radio station and forconverting a signal transmitted by the radio station to an audio signal;a memory unit for storing information identifying one or more templateseach derived from a portion of a corresponding audio signal, wherein theone or more templates were previously determined based on selectionsmade by a user of the system in real-time while listening to the radiostation; and a recognition processor, associated with the tuner and thememory unit, for determining whether content of the audio signal matchesone of one or more previously identified templates, wherein if thecontent of the audio signal matches one of the one or more previouslyidentified templates, the tuner is automatically tuned to a differentradio station than the one to which the tuner is currently tuned;wherein each of the one or more previously identified templates isassociated with a content item for which a user of the system haspreviously indicated a dislike.